home *** CD-ROM | disk | FTP | other *** search
/ Archive Magazine CD 1995 / Archive Magazine CD 1995.iso / text / hints / volume_03 / issue_04 < prev    next >
Text File  |  1995-02-16  |  7KB  |  204 lines

  1. • 80k of RMA and rising!  RMA stands for Relocatable Module Area.  In
  2. English, this is the area of memory which some parts of the operating
  3. system (modules) use as work space.  This is why when you first
  4. initialise your computer you will find that your RMA takes over 80k of
  5. memory.  For those of you who are curious, here is a guide to the memory
  6. each module claims on power up:
  7. 3.04
  8.    Module      Workspace (bytes)
  9. 3.04
  10.    FileSwitch      2400
  11. 3.04
  12.    Desktop      528
  13. 3.04
  14.    SystemDevices   288
  15. 3.04
  16.    BBCEconet      80
  17. 3.04
  18.    InternationalKeyboard   528
  19. 3.04
  20.    Debugger      448
  21. 3.04
  22.    SoundChannels   8464
  23. 3.04
  24.    Sound Scheduler   8208
  25. 3.04
  26.    WaveSynth      1760
  27. 3.04
  28.    StringLib      8576
  29. 3.04
  30.    Perussion      8800
  31. 3.04
  32.    SpriteExtend   1296
  33. 3.04
  34.    Draw      272
  35. 3.04
  36.    FontManager   2832
  37. 3.04
  38.    WindowManager   7920
  39. 3.04
  40.    NetStatus      16
  41. 3.04
  42.    Podule      208
  43. 3.04
  44.    ADFS      656
  45. 3.04
  46.    FileCore%ADFS   12,464
  47. 3.04
  48.    HourGlass      1952
  49. 3.04
  50.    TaskManager   3760
  51. 3.04
  52.    PaletteUtil      3632
  53. 3.04
  54.    Filer      4993
  55. 3.04
  56.    ADFSFiler      2336
  57. 3.04
  58.    ShellCLI      1872
  59. 3.04
  60.    Total      84308
  61. 3.04
  62. RMA is also used to contain WIMP sprites (especially application icons
  63. stored in their !Sprite files) and relocatable modules, which add extra
  64. facilities to the ROM based operating system e.g. 65Tube provides BBC
  65. emulation.  This means that as the Archimedes ‘sees’ and loads more
  66. applications/modules the memory acquired by the RMA grows and can quite
  67. easily reach 300k plus!
  68. 3.04
  69. Since there are several uses for the RMA, there are several ways of
  70. reducing the memory it requires:
  71. 3.04
  72. a) Remove individual modules using the *RMKill command e.g. *RMKill
  73. Percussion − this will only temporarily remove the facilities provided
  74. by a module.
  75. 3.04
  76. b) Unplug unwanted modules using the *RMUnplug command e.g. *RMUnplug
  77. BBCEconet − this will permanently remove the facilities provided by an
  78. operating system ROM module − so if you don’t have Econet or don’t use
  79. the Debugger then you can unplug the relevant modules and release their
  80. workspace.  Note, you can reinvoke the facilities of a module by using
  81. the *RMReInit command.
  82. 3.04
  83. c) Use the following BASIC V program to clear the RMA sprite area:
  84. 3.04
  85.    program segment missing
  86. 3.04
  87. d) If you have finished processing and saved all your work you could
  88. press <ctrl-break> but this is rather drastic.
  89. 3.04
  90. • ArcTerm update − Hugo Fiennes has updated ArcTerm v6.01 so that it
  91. works properly with the CET and CET+ standards.  An upgrade can be
  92. obtained direct from Hugo Fiennes free of charge.
  93. 3.04
  94. • Arthur desktop − If any of you have changed over to RISC-OS but are
  95. pining for the old Arthur desktop (!) then see if you can get hold of a
  96. copy of Brainsoft’s Disk Transfer program.  This provides a modified ram
  97. copy of the desktop with extra features added.  You will then be able to
  98. access your old desktop diaries, etc.  Dave Woods.
  99. 3.04
  100. • ASCII BASIC programs − BASIC V can load and renumber an untokenised
  101. text file with the *BASIC -load <filename> command (the same applies
  102. with the -chain option).  Thus you don’t really need a BASIC to ASCII
  103. convertor; you could just keep all your BASIC programs in ASCII, at
  104. least while you develop them, and still be able to edit them using a
  105. text editor, e.g. TWIN or !Edit.
  106. 3.04
  107. • Auto-booting applications − If you want a RISC-OS application to load
  108. or run as soon as the disc is inserted then you should modify the !Boot
  109. file in the application to execute the !Run file i.e. add the command
  110. *Run <Obey$Dir>.!Run in the !Boot file.  This technique could be used,
  111. for example, to automatically load the BASIC Editor when a development
  112. disc is inserted.
  113. 3.04
  114. • Break key action − You can set the action of the <break> key using the
  115. *FX 247,<n> command.  The value byte <n> alters <break> and modifiers of
  116. it as follows:
  117. 3.04
  118.    Bits   Key Combination
  119. 3.04
  120.    0.1   <break>
  121. 3.04
  122.    2.3   <shift-break>
  123. 3.04
  124.    4.5   <ctrl-break>
  125. 3.04
  126.    6.7   <ctrl-shift-break>
  127. 3.04
  128. Each two bit number may take on one of these values:
  129. 3.04
  130.    Value   Effect
  131. 3.04
  132.    00   Act as <reset> key
  133. 3.04
  134.    01   Act as <escape> key
  135. 3.04
  136.    10   No effect
  137. 3.04
  138.    11   Undefined
  139. 3.04
  140. The default is *FX 247,1 which makes <break> act as if it were <escape>
  141. and all other combinations cause a reset.
  142. 3.04
  143. • Desktop grey scale?  If you modify colours 0 or 7 (white or black)
  144. using the desktop palette utility then the palette application will
  145. attempt to interpolate the colours in between i.e. colours 1-6.  Try it
  146. and see!
  147. 3.04
  148. • Don’t move your mouse!  Whilst waiting for a program to complete a
  149. lengthy process (e.g. when the hourglass is on) it is best not to move
  150. the mouse as keeping track of the mouse movements takes up processor
  151. time.
  152. 3.04
  153. • Faster BASIC SWI’s − When using the SYS command within a BASIC V
  154. program, it is quicker to use a number instead of a string.  e.g. SYS6
  155. instead of SYS “OS_Byte”.  However, the best way to obtain the number
  156. values is to use a BASIC variable and “OS_SWINumberFromString”.  This
  157. increases speed while maintaining machine independence and readability. 
  158. For example:
  159. 3.04
  160.    program segment missing
  161. 3.04
  162. • Insert/overwrite with !Edit − It is possible to toggle between insert
  163. and overwrite mode in Edit by pressing <shift-f1>.
  164. 3.04
  165. • Mouse step − you can set the sensitivity of your mouse by using the
  166. BASIC V MOUSE STEP command e.g. MOUSE STEP 4 means that the pointer will
  167. move 4 O.S. pixels for every mouse pulse.  The ‘sensitivity parameter’
  168. can take a zero or even a negative value, so that you can freeze the
  169. mouse or even invert it!
  170. 3.04
  171. • Multiple entry PROC’s and FNs − You can have multiple entries to
  172. procedures and functions, although it may not be good programming style. 
  173. This is because lines beginning with DEF are not executed, so you can
  174. have further DEFs within the body of a procedure/function, and enter at
  175. these points with an appropriate call − this might be particularly
  176. useful to have a first entry, set up some default parameters, and then
  177. have entry to override them:
  178. 3.04
  179.    program segment missing
  180. 3.04
  181. • O.S. case sensitivity − Contrary to what has been said in the past,
  182. the operating system is almost entirely case-insensitive, unlike BASIC,
  183. and although the case of filenames and variable names is preserved it is
  184. not significant.  Quotes are also generally unnecessary except when
  185. including a space in a parameter.
  186. 3.04
  187. • Removing recursive directories (cont’d) − If you accidentally copy a
  188. directory into itself then the best way to tidy the disc up is to create
  189. a RAM disc and move the unwanted files into it (you can move a file by
  190. dragging it into the filer window while holding the <shift> button
  191. down).
  192. 3.04
  193. • Time for function keys − Function key strings are just treated as OS
  194. variables called Key$<n>, where <n> is the key number.  This means that
  195. all the commands relate to system variables can be used with function
  196. keys e.g. *ShowKey$ will display key definitions.  *SetMacro Key$0
  197. <Sys$Time> will make <f0> display the time and so on.
  198. 3.04
  199. • Using *GOS − You can use the *GOS command from the desktop to prevent
  200. returning if you accidentally hit the <return> key.  Once you have
  201. finished typing your *commands you can use the •Quit command to go back
  202. to the desktop.
  203. 3.04
  204.